1. Field of the Invention
The present invention relates to a circuit configuration, as well as to a corresponding method for distributing pulses within a time interval on the basis of an input signal.
2. Description of the Related Art
Generally, a position of motors is monitored by sensors which output a signal in response to a specific position being reached. This could be a crankshaft pulse-generator wheel of a combustion engine which, upon reaching a specific rotary angle, outputs a signal for identifying a specific position. This type of signal output can also be implemented by sensors that indicate a change in a magnetization when working with electromotors having permanent magnets. However, a pulse-generator wheel can also be used for these motors, as in the case of combustion engines. A control unit is able to compute a rotational speed from a time interval between two such events if the corresponding differential angle is known. The output sensor signals also indicate the momentary position of the motor in question.
To be able to more precisely assign, respectively determine a position of a motor, a duration to be expected until the next event is predicted, and a predetermined number of pulses, that is output, is distributed over this time interval in accordance with the duration that is to be expected. A position counter, respectively what is generally referred to as an angular clock, sums these output pulses within the time interval by incrementation, thereby allowing for enhanced positional information.
In the case of a motor acceleration, it may, however, occur that a next event, which induces a sensor to output a signal, occurs already before all pulses of the most recent time interval have been output.
As explained above, the time interval is specified, respectively predefined by the time interval between two successive events. However, once the time intervals have been predicted with knowledge of a history of successive events, and a number of pulses is derived therefrom that is to be distributed over the predicted time interval, it can happen that the predicted time interval does not coincide with the actually occurring time interval, because two successive events follow each other at a shorter time interval, due, for example, to the motor acceleration just mentioned. It is conceivable in this case that the number of pulses that had been predefined on the basis of the predicted time interval and distributed accordingly, was not able to be completely output within the actual time interval. It is sometimes customary in such a case to output pulses, which have not yet been output, at a maximum possible frequency before the actual pulses, which are to be output for the now subsequent time interval, are generated. This means that all of the pulses, which were not able to be output during the preceding time interval, are output at a highest possible frequency at the beginning of a time interval. However, this may result in a corresponding position counter having to change the value thereof very quickly, and modules, which analyze this position counter value, not being able to react in the desired manner.
Accordingly, it appears to be useful to add the pulses, not output in a preceding time interval, to a number of pulses to be output in the current time interval and to uniformly distribute this total pulse number over the current time interval. Under known methods heretofore, such conditions had only been realized as software.
Against this background of the high load of the CPU that is available to the entire system, it would be desirable to provide a method for distributing a total pulse number over a current time interval using hardware without the support of the CPU that is available to the system.